$(function () {
  // 调用 getUserInfo 获取用户的基本信息
  getUserInfo()

  let layer = layui.layer
  // 为退出绑定点击事件
  $("#btnLogout").on('click', function () {
    // 提示用户是否退出, 回调函数点击确定之后执行
    layer.confirm('确定退出登录？', {
      icon: 3, title: '提示'
    }, function (index) {
      // 清空本地中存储的 token
      localStorage.removeItem('token')
      // 重新跳转到登录页面
      location.href = '/login.html'
      // 关闭询问框
      // layer.close(index)
    })
  })
})

// 获取用户的基本信息
function getUserInfo() {
  $.ajax({
    method: 'GET',
    url: '/my/userinfo',
    // headers: {
    //   // 2.向请求报文头 添加 token,必须是 Au...
    //   Authorization: localStorage.getItem('token') || ''
    // },
    success: function (res) {
      // 获取用户信息 成功后 打印用户信息
      if (res.status !== 0) {
        return layui.layer.msg('获取用户信息失败')
      } else {
        renderAvatar(res.data)
      }
    },
    // 无论成功或者失败，都会调用 complate 回调函数
    // complete: function (res) {
    //   console.log(res);
    //   // 在 complate 回调函数中，可以使用 res.responseJSON 拿到服务器响应回来的数据
    //   if (res.responseJSON.status === 1 && res.responseJSON.message === '身份认证失败！') {
    //     // 1.强制清空 token
    //     localStorage.removeItem('token')
    //     // 弹出 layui 类型的提示框，并添加回调函数
    //     layer.alert('您尚未登录，请重新登录~~~', function () {
    //       // 强制跳转到登录页面
    //       location.href = '/login.html'
    //     })
    //   }
    // }
  })
}

// 渲染用户名和头像
function renderAvatar(user) {
  let name = user.nickname || user.username
  // 设置欢迎文本
  $("#welcome").html('欢迎&nbsp;&nbsp;' + name)
  // 按需渲染用户的头像
  if (user.user_pic != null) {
    // 渲染图片头像,获取服务器返回的图片路径
    $(".layui-nav-img").attr('src', user.user_pic).show()
    // 将文本头像隐藏起来
    $(".text-avatar").hide()
  } else {
    // 否则将图片头像隐藏起来
    $('.layui-nav-img').hide()
    // 获取文本头像，将第一个字符获取转成大写，将它设置为文本头像
    let first = name[0].toUpperCase()
    $(".text-avatar").html(first).show()
  }
}